// 任务路由
import taskController from '../controllers/taskController.ts';
import type { FastifyInstance } from 'fastify';

/**
 * 任务路由函数
 * 注册任务相关的API路由
 * @param {FastifyInstance} fastify - Fastify实例
 * @param {Object} options - 路由选项
 */
async function taskRoutes(fastify: FastifyInstance, options: any) {
  // 为所有路由应用认证中间件
  fastify.addHook('preHandler', fastify.authenticate);
  
  // 创建任务接口
  fastify.post('/api/v1/tasks', taskController.createTask);
  // 获取任务列表接口
  fastify.get('/api/v1/tasks', taskController.getTasks);
  // 获取"我的一天"任务列表接口
  fastify.get('/api/v1/tasks/my-day', taskController.getMyDayTasks);
  // 获取任务详情接口
  fastify.get('/api/v1/tasks/:taskId', taskController.getTaskDetail);
  // 更新任务接口
  fastify.put('/api/v1/tasks/:taskId', taskController.updateTask);
  // 删除任务接口
  fastify.delete('/api/v1/tasks/:taskId', taskController.deleteTask);
  // 更新任务分组接口
  fastify.put('/api/v1/tasks/:taskId/group', taskController.updateTaskGroup);
}

export default taskRoutes;



